function DrawGroupDelay (figura,transferencia,Color,transferencias,unidades,wp)
    [~,~,largo] = zpkdata(transferencias);
%    
%     [z p konst]=zpkdata(transferencia);
%     z=cell2mat(z);
%     z=squeeze(z)
%     p=cell2mat(p);
%     p=squeeze(p);
%     minz=inf;
%     if ~isempty(z)
%         for k=1:length(z)
%             if abs(z(k))<abs(minz)
%                 minz=z(k);
%             end
%         end
%         for k=1:length(z);
%             for m=k:length(z);
%                 if abs(z(m)-z(k))<minz/100
%                     z(k)=z(m);
%                 end
%             end
%         end
%     end 
%     transferencia=konst*tf(poly(z),poly(p));

    for l =1 : length(largo)
        
        [MAG,FASE,W]=bode(transferencias(l));

        [MAG,FASE,W]=bode(transferencias(l),logspace(log10(W(1)),log10(W(end)/3),10000));
        fase=squeeze(FASE);


        retardodegrupo=-diff(fase.*pi./180)./diff(W);
        ww=W(2:end);
        
        
        
        cantdeltas=0;
        for k=2:length(ww)
            if abs(retardodegrupo(k)-retardodegrupo(k-1))>0.1
                cantdeltas=cantdeltas+1;
                retardodegrupo(k)=retardodegrupo(k-1);
            end    
        end
    
        amplidelta(l)=(max(retardodegrupo)-min(retardodegrupo))/4;
        ampliw(l)=(ww(end))/50;
        
        
        
        
    end
    amplidelta=max(amplidelta);
    ampliw=max(ampliw);
    
    
    

    [MAG,FASE,W]=bode(transferencia);
    
    [MAG,FASE,W]=bode(transferencia,logspace(log10(W(1)),log10(ampliw*50),10000));
    fase=squeeze(FASE);
    w=[]; 
    valor=[];
    retardodegrupo=-diff(fase.*pi./180)./diff(W);
    ww=W(2:end);
    cantdeltas=0;
    for k=2:length(ww)
        if abs(retardodegrupo(k)-retardodegrupo(k-1))>0.1
            cantdeltas=cantdeltas+1;
            retardodegrupo(k)=retardodegrupo(k-1);
            w(cantdeltas)=ww(k);
            valor(cantdeltas)=retardodegrupo(k);
            selected=k;
        end    
    end
    
    for k=1:length(ww)
        if retardodegrupo(k)<0
            retardodegrupo(k)=retardodegrupo(k-1);
            valor(1)=retardodegrupo(k);
            w(1)=ww(k);
            cantdeltas=1;
            
            
        end
    end
    
    [z p k]=zpkdata(transferencia);
    z=squeeze(cell2mat(z));
   
    
     
    %if l
    
    
%      if ~isempty(z) && cantdeltas==0
%         selected=1;
%         for k=2:length(ww)
%            if abs(ww(k)-abs(z(1)))<abs(z(1))/100
%                selected=k;
%         end
%         cantdeltas= 1;
%         w(cantdeltas)=abs(z(1));
%         valor(cantdeltas)=retardodegrupo(selected);
%         
%         for k=(selected-100):(selected+100)
%             retardodegrupo(k)=retardodegrupo(k-1);
%         end
%          
%         end
%     end
    
    w=w/unidades;
    ww=ww/unidades;
    ampliw=ampliw/unidades;

    for k=1:length(w)
        hold on;
        plot(figura,[w(k) w(k)],[valor(k) valor(k)-amplidelta],'Color',Color);
        hold on;
        plot(figura,[w(k) w(k)-ampliw],[valor(k)-amplidelta valor(k)-amplidelta*4/5],'Color',Color);
        hold on;
        plot(figura,[w(k) w(k)+ampliw],[valor(k)-amplidelta valor(k)-amplidelta*4/5],'Color',Color);
    end
    hold on;
    plot(figura,[ww],retardodegrupo,'Color',Color);
    hold on;
    line([0 0],[-1000000 10000000],'Parent',figura,'Color',[0 0 0]);
    hold on;
    line([-ww(end),ampliw*5000],[0 0],'Parent',figura,'Color',[0 0 0]);
    
    set(figura,'YLim',[min(retardodegrupo)-amplidelta,max(retardodegrupo)+amplidelta]);
    set(figura,'XLim',[-ww(end)/20,ampliw*20]);
end
